package com.example.demo.controller;

import lombok.Data;
import lombok.ToString;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

@RestController
@RequestMapping("/Demo")
public class DemoController {
    /*1、value：请求参数中的名称。
2、required：请求参数中是否必须提供此参数。 默认值：true。 表示必须提供，如果不提供将报错。
3、defaultValue:默认值*/
    @GetMapping("/test1")
    public ResponseEntity<?> test1(@RequestParam(value = "id", defaultValue = "4") int id) {
     return ResponseEntity.ok (id * 100);
    }

/*    @PutMapping("/test2")
    public String test2(String name,String sex,Integer age){
       return name+","+sex+"性"+age+"周岁";

    }*/
    @PostMapping("/test2")
    public ResponseEntity<?> test3(@RequestBody User user){
        StringBuffer append = new StringBuffer().append(user.getName()).append(user.getSex()).append(user.getAge());
        return ResponseEntity.ok(append);

    }
    @PutMapping("/test3")
    public ResponseEntity<?> test4(@RequestBody User user){
        if (user.age>18){
            user.setMark("已成年");
        }
        StringBuffer append = new StringBuffer().append(user.getName()).append(user.getSex()).append(user.getAge()).append(user.getMark());
        return ResponseEntity.ok(append);
    }
    @DeleteMapping("/test5")
    public ResponseEntity<?> test5(@RequestBody User user){
        return ResponseEntity.ok(user.getName()+"信息已删除");
    }
    @ToString
    @Data
    static class User{
        private String name;
        private String sex;
        private Integer age;
        private  String mark;
    }

}
